package com.atguigu.gmall.realtime.util;

import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

/**
 * @Author lzc
 * @Date 2023/2/21 14:20
 */
public class ThreadPoolUtil {
    
    // 每个并行度一个线程池
    public static ThreadPoolExecutor getThreadPool(){
        return new ThreadPoolExecutor(
            300,  // 核心线程数
            500, // 最大线程数
            120, // 空闲线程的存活时间
            TimeUnit.SECONDS,
            new LinkedBlockingQueue<>() // 线程池没有资源的时候,提交的任务进入这个队列等待
        );
    }
}
